Raporty definiowane
s▒ sposobem na szybkie uzyskanie wybranych informacji z bazy danych programu.
Raporty podzielono na tematy, kt≤rym odpowiada okre╢lony zestaw tabel bazy
danych. Przechodz▒c do definiowania nowego raportu nale┐y wybraµ interesuj▒cy temat, a
nastΩpnie, typowo, dodaµ now▒ pozycjΩ i wpisaµ nazwΩ raportu. Nazwa pojawi siΩ na
wydruku obok tematu. Kolejnym etapem definiowania raportu jest okre╢lenie kolumn na
podstawie proponowanego zestawu znajduj▒cego siΩ o okienku listy. KlikniΩcie na
odpowiedni guzik ">" lub te┐ "<" powoduje w│▒cznie pola do
raportu lub te┐ wy│▒czenie. Tabela wykazu kolumn raportu umo┐liwia zmianΩ tre╢ci
nag│≤wka, blokadΩ wydruku ( wstawiona kolumna mo┐e byµ u┐yta wy│▒cznie do filtra),
okre╢lenie sortowania i zdefiniowanie filtrowania danych.
Filtrowanie.
Zagadnienie wyboru danych do raportu nale┐y do najwa┐niejszych i skuteczne
ograniczanie decyduje o mozliwo╢ci wykorzystania raportu. Wprowadzono nastΩpuj▒ce
operatory:
" " - brak operatora - filtr jest wy│▒czony
operator | pole tekstowe | pole numeryczne | pole daty |
<< |
dana z pola zawiera siΩ w warto╢ci | dana mniejsza ponad 1000 razy | data z pola o przynajmniej rok wcze╢niejsza |
< |
dana jest mniejsza w sensie alfabetu | dana mniejsza | data z pola wcze╢niejsza |
= |
teksty s▒ sobie r≤wne | obie r≤wne | r≤wne daty |
# |
teksty r≤┐ne | obie r≤┐ne | r≤┐ne daty |
~ |
teksty podobne (zawieraj▒ siΩ w sobie) | warto╢ci przybli┐one do 10% | przybli┐one daty |
> |
dane wiΩksza w sensie alfabetu | dana wiΩksza | data pola p≤╝niejsza |
>> |
warto╢µ zawiera siΩ w tek╢cie pola | dana wiΩksza ponad 1000 razy | data pola p≤╝niejsza ponad rok |
Budowanie filtr≤w z│o┐onych polega na sk│adniu
filtru z warunk≤w dla wielu wybranych p≤l. Musimy wiedzieµ, ┐e domy╢lnie zak│ada
siΩ spe│nienie wszystkich warunk≤w, czyli zastosowano operator logiczy "i".
Je┐eli jednak istnieje potrzeba zdefiniowania filtru z zastosowaniem operator
"lub", to wystarczy skorzystaµ z pola NF ( negacja filtru ) w
nag│≤wku definicji raportu. Odznaczenie tego pola spowoduje wybranie danych do raportu,
gdy zdefiniowany filtr nie jest spe│niony.
Dalej nale┐y skorzystaµ ze znanej zale┐no╢ci:
!( a i b) = (
!a lub !b), gdzie znakiem "!" oznaczono negacjΩ wyra┐enia.
Przyk│adowo:
Zadanie polega na wygenerowaniu raportu sprzeda┐y dla dw≤ch klient≤w o nazwach
sk≤conych: KLIENT1 i KLIENT2.
Do raportu wstawiamy dwie kolumny NAZWA_SKR i jedn▒ z nich zaznaczamy, ┐e ma siΩ
nie drukowaµ. Po zdefiniowaniu pozosta│ych kolumn raportu pozostaje konieczno╢µ
wstawienia odpowiednich warunk≤w do filtru. Do p≤l zatytuowanych "Warto╢µ"
wpisujemy odpowiednio wymagane nazwy klient≤w oraz wybieramy operatory "#" (
r≤┐ny). NastΩpnie musimy zaznaczyµ pole NF w nag│≤wku definicji raportu. Jak widaµ
wygl▒da to wszystko nieco skomplikowanie, ale to tylko pozory.
W programie ksiΩgowym powinna byµ mo┐liwo╢µ wykonania raportu zawieraj▒cego
sumy kwot lub zliczenie liczby pozycji. Raporty Definiowane maj▒ tak▒ mo┐liwo╢µ po
zaznaczeniu opcji "ZLICZ" w nag│≤wku raportu. Efektem raportu zliczonego jest
tabela zawieraj▒ca kolumny okre╢lone jako nag│≤wki wieszy ( nie polegaj▒ sumowaniu,
ani zliczeniu ), kt≤re grupuj▒ dane i kolumny zawieraj▒ce sumy p≤l numerycznych oraz
zliczone pozosta│e pola. Sprawd╝ dzia│anie opcji zliczania drukuj▒c raport w obu jej
stanach. W≤wczas wszystko stanie siΩ jasne ;)
Szczeg≤lne przypadki zastosowania raport≤w
definiowanych wymagaj▒ zastosowania p≤l wyliczeniowych. Istnieje mo┐liwo╢µ
wykorzystania w tym celu kolumny "Formu│a" specyfikacji raportu. W polu tym
trzeba zapisaµ tak▒ formu│Ω, kt≤ra umo┐liwi programowi pobranie i wyliczenie
wymaganej warto╢ci. Np. zapisuj▒c tabela1->pole1-tabela1->pole2 uzyskamy pole
wyliczeniowe r≤wne r≤┐nicy p≤l pole1 i pole2 tabeli1.
Warto╢µ wyliczeniowa mo┐e byµ por≤wnywana z warto╢ci▒ wpisan▒ zgodnie z
zadanym operatorem.